# 列表的反转
list1 = [1, 5, 6, 3, 4, 8, 2]

# 方法1:
# 之前我们学习切片的时候有一种字符串反转的方法,该方法在列表中同样适用
print(list1[::-1])  # [2, 8, 4, 3, 6, 5, 1]
# 原数据无任何变化
print(list1)  # [1, 5, 6, 3, 4, 8, 2]

print('------------------')

# 方法2:
# 在列表中也有一种方法叫做reverse 可以进行列表反转
# reverse 和 切片不同,切片时生成一个新的反转的列表.而reverse是在原数据上进行修改的,没有生成新的列表
# print(list1.reverse()) # None
list1.reverse()
print(list1)  # [2, 8, 4, 3, 6, 5, 1]

print('------------------')

# 列表的排序
# 列表的排序,可以使用循环的方法完成,但是比较麻烦.
# 在python中给我们提供了一种非常方便的排序方式  sort
list2 = [1, 5, 6, 3, 4, 8, 2]

# sort 也是修改了列表的原数据,而没有产生新的列表
# print(list2.sort()) # None
list2.sort()
# 在python中的sort函数排序时默认使用升序排列(从小到大)
print(list2)  # [1, 2, 3, 4, 5, 6, 8]

print('------------------')

# 如果需要降序排列
list3 = [1, 5, 6, 3, 4, 8, 2]

# 方法一:
list3.sort()  # 先排序
list3.reverse()  # 再反转
print(list3)  # [8, 6, 5, 4, 3, 2, 1]

# 方法二:
list3 = [1, 5, 6, 3, 4, 8, 2]

list3.sort(reverse=True)
print(list3)  # [8, 6, 5, 4, 3, 2, 1]
